package com.spzx.user.service;

import java.util.List;

import com.spzx.user.api.domain.UpdateUserLogin;
import com.spzx.user.api.domain.UserAddress;
import com.spzx.user.api.domain.UserInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import jakarta.servlet.ServletException;

/**
 * 会员Service接口
 *
 * @author atguigu
 * @date 2024-09-27
 */
public interface IUserInfoService extends IService<UserInfo>
{

    /**
     * 查询会员列表
     *
     * @param userInfo 会员
     * @return 会员集合
     */
    public List<UserInfo> selectUserInfoList(UserInfo userInfo);

    /**
     * 根据会员id获取会员的信息地址
     * @param userId
     * @return
     */
    List<UserAddress> selectUserAddressList(Long userId);

    //=====================远程调用================================

    /**
     * 注册用户
     * @param userInfo 用户信息
     */
    void register(UserInfo userInfo) throws ServletException;

    /**
     * 根据用户名获取用户信息
     * @param username
     * @return
     */
    UserInfo selectUserByUserName(String username);

    /**
     更新用户登陆信息
     * @param updateUserLogin
     * @return
     */
    Boolean updateUserLogin(UpdateUserLogin updateUserLogin);
}
